package com.ar4j.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Marks a property to be ignored for active record backing store operations
 */
@Target({ ElementType.FIELD, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Ignored { 
  
  /**
   * @return true if the field marked is to be ignored during reads
   */
  boolean ignoredForReading() default true;
  
  /**
   * @return true if the field marked is to be ignored during writes
   */
  boolean ignoredForWriting() default true;
  
}
